package com.pig4cloud.pig.model.api.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;

/**
 * 模型请求日志
 *
 * @author marco
 * @date 2024-06-17 11:10:12
 */
@Data
@TableName("model_log")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "模型请求日志")
public class ModelLogEntity extends Model<ModelLogEntity> {


	/**
	* 编号
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="编号")
    private Long id;

	/**
	* 类型 1-成功 2-失败
	*/
    @Schema(description="类型 1-成功 2-失败")
    private Integer type;

	/**
	* 模型名称
	*/
    @Schema(description="模型名称")
    private String title;

	/**
	* 查询的结果
	*/
    @Schema(description="查询的结果")
    private String operation;

	/**
	* 请求方法
	*/
    @Schema(description="请求方法")
    private String method;

	/**
	* 协议
	*/
    @Schema(description="协议")
    private String protocol;

	/**
	 * 版本
	 */
	@Schema(description="版本")
	private String version;
	/**
	 * 模型真实地址
	 */
	@Schema(description="url")
	private String url;
	/**
	* 地址
	*/
    @Schema(description="地址")
    private String ip;

	/**
	* 端口
	*/
    @Schema(description="端口")
    private String port;

	/**
	* 基础路径
	*/
    @Schema(description="基础路径")
    private String path;
	/**
	 * 参数类型
	 */
	@Schema(description="请求参数")
	private String parameterType;
	/**
	* 请求参数
	*/
    @Schema(description="请求参数")
    private String parameter;

	/**
	* header
	*/
    @Schema(description="header")
    private String header;

	/**
	 * 代理header
	 */
	@Schema(description="代理header")
	private String orginHeader;

	/**
	 * threadId
	 */
	@Schema(description="线程id")
    private Long threadId;
	/**
	* 执行时间
	*/
    @Schema(description="执行时间")
    private Long executeTime;

	/**
	* 开始时间
	*/
    @Schema(description="开始时间")
    private LocalDateTime startTime;

	/**
	* 结束时间
	*/
    @Schema(description="结束时间")
    private LocalDateTime endTime;

	/**
	* 异常信息
	*/
    @Schema(description="异常信息")
    private String exception;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 更新人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="更新人")
    private String updateBy;

	/**
	* 更新时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="更新时间")
    private LocalDateTime updateTime;
}
